// import 'package:flustars_flutter3/flustars_flutter3.dart';
// import 'package:flutter/material.dart';
// import 'package:flutter_custom_calendar/flutter_custom_calendar.dart';
// import 'package:ls_work/common/common.dart';
// import 'package:ls_work/mvp/svp_progress.dart';
// import 'package:ls_work/net/HttpUtil.dart';
// import 'package:ls_work/net/net.dart';
// import 'dart:convert';
// import 'package:dio/dio.dart';
// import 'package:ls_work/util/toast.dart';
//
// ///自定义风格+单选
// class HomeScheduleQueryPage extends StatefulWidget {
//   @override
//   _HomeScheduleQueryPageState createState() => _HomeScheduleQueryPageState();
// }
//
// class _HomeScheduleQueryPageState extends State<HomeScheduleQueryPage> {
//   ValueNotifier<String> text;
//   CalendarController controller;
//   Map _listMap;
//   String nowTime = "${DateTime.now().year}-${DateTime.now().month}";
//
//   @override
//   void dispose() {
//     print('🍎' * 20);
//     super.dispose();
//   }
//
//   @override
//   void initState() {
//     super.initState();
//     WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
//       _fectData();
//     });
//     controller = new CalendarController(
//         maxMultiSelectCount: 1,
//         selectDateModel: DateModel.fromDateTime(DateTime.now()));
//
//     controller.addMonthChangeListener(
//       (year, month) {
//         setState(() {
//           text.value = "$year年$month月";
//           nowTime = "$year-$month";
//           print('object ' + nowTime);
//           _fectData();
//         });
//       },
//     );
//     text = new ValueNotifier("${DateTime.now().year}年${DateTime.now().month}月");
//   }
//
//   @override
//   Widget build(BuildContext context) {
//     print('🍌' * 20);
//     print(_listMap != null);
//     return Scaffold(
//         appBar: AppBar(
//           title: Text('排班查询'),
//           elevation: 0.5,
//         ),
//         body: SingleChildScrollView(
//           child: new Container(
//             child: new Column(
//               children: <Widget>[
//                 new Row(
//                   mainAxisAlignment: MainAxisAlignment.center,
//                   children: <Widget>[
//                     new IconButton(
//                         icon: Icon(Icons.navigate_before),
//                         onPressed: () {
//                           controller.moveToPreviousMonth();
//                         }),
//                     ValueListenableBuilder(
//                         valueListenable: text,
//                         builder: (context, value, child) {
//                           return new Text(text.value);
//                         }),
//                     new IconButton(
//                         icon: Icon(Icons.navigate_next),
//                         onPressed: () {
//                           controller.moveToNextMonth();
//                         }),
//                   ],
//                 ),
//                 (_listMap != null && _listMap.isNotEmpty)
//                     ? CalendarViewWidget(
//                         calendarController: controller,
//                         weekBarItemWidgetBuilder: () {
//                           return CustomStyleWeekBarItem();
//                         },
//                         dayWidgetBuilder: (dateModel) {
//                           print(dateModel.month.toString() + '🍎' * 5);
//                           return CustomStyleDayWidget(
//                             dateModel,
//                             map: _listMap,
//                           );
//                         })
//                     : Container(),
//               ],
//             ),
//           ),
//         ));
//   }
//
//   _fectData() {
//     SVProgressHUD page = SVProgressHUD(context);
//     var map = {'month': nowTime, 'humanId': SpUtil.getInt(Constant.humanId)};
//     page.showProgress();
//
//     HttpUtil.instance
//         .getDio()
//         .post(HttpApi.detailRecord, data: FormData.fromMap(map))
//         .then((r) {
//       ///
//       page.closeProgress();
//       if (r.statusCode == 200) {
//         Map<String, dynamic> map = json.decode(r.toString());
//         if (map["code"].toString() == "0") {
//           if (map['data'] != null) {
//             Map listMap = map['data']['map'];
//             setState(() {
//               if (listMap != null) {
//                 print(listMap);
//                 _listMap = listMap;
//               }
//             });
//           } else {
//             Toast.show(map["msg"]);
//           }
//         } else {
//           Toast.show(map["msg"]);
//         }
//       } else {
//         Toast.show(r.statusCode.toString());
//       }
//     }).catchError((e) {
//       page.closeProgress();
//       print(e.toString());
//       Toast.show(getErrorMessage(e));
//     });
//   }
// }
//
// class CustomStyleWeekBarItem extends BaseWeekBar {
//   final List<String> weekList = ["一", "二", "三", "四", "五", "六", "日"];
//
//   @override
//   Widget getWeekBarItem(int index) {
//     return new Container(
//       child: new Center(
//         child: new Text(weekList[index]),
//       ),
//     );
//   }
// }
//
// class CustomStyleDayWidget extends BaseCustomDayWidget {
//   final Map map;
//   CustomStyleDayWidget(DateModel dateModel, {Key key, this.map})
//       : super(dateModel);
//
//   @override
//   void drawNormal(DateModel dateModel, Canvas canvas, Size size) {
//     if (!dateModel.isCurrentMonth) {
//       return;
//     }
//     bool isWeekend = dateModel.isWeekend;
//     bool isInRange = dateModel.isInRange;
//
//     //顶部的文字
//     TextPainter dayTextPainter = new TextPainter()
//       ..text = TextSpan(
//           text: dateModel.day.toString(),
//           style: new TextStyle(
//               color: !isInRange
//                   ? Colors.grey
//                   : isWeekend ? Colors.blue : Colors.black,
//               fontSize: 16))
//       ..textDirection = TextDirection.ltr
//       ..textAlign = TextAlign.center;
//
//     dayTextPainter.layout(minWidth: size.width, maxWidth: size.width);
//     dayTextPainter.paint(canvas, Offset(0, 10));
//
//     //下面的文字
//     String month =
//         dateModel.month < 10 ? '0${dateModel.month}' : '${dateModel.month}';
//     String day = dateModel.day < 10 ? '0${dateModel.day}' : '${dateModel.day}';
//     String keyStr = '${dateModel.year}-$month-$day';
//     print(keyStr + '🍉' * 20);
//     String value = (map != null &&
//             map.isNotEmpty &&
//             map[keyStr] != null &&
//             map[keyStr].toString().isNotEmpty)
//         ? map[keyStr]
//         : dateModel.lunarString;
//     TextPainter lunarTextPainter = new TextPainter()
//       ..text = new TextSpan(
//           text: value,
//           style: new TextStyle(
//               color: !isInRange
//                   ? Colors.grey
//                   : isWeekend ? Colors.blue : Colors.grey,
//               fontSize: 12))
//       ..textDirection = TextDirection.ltr
//       ..textAlign = TextAlign.center;
//
//     lunarTextPainter.layout(minWidth: size.width, maxWidth: size.width);
//     lunarTextPainter.paint(canvas, Offset(0, size.height / 2));
//   }
//
//   @override
//   void drawSelected(DateModel dateModel, Canvas canvas, Size size) {
//     if (!dateModel.isCurrentMonth) {
//       return;
//     }
//     //绘制背景
//     Paint backGroundPaint = new Paint()
//       ..color = Colors.blue
//       ..strokeWidth = 2;
//     double padding = 8;
//     canvas.drawCircle(Offset(size.width / 2, size.height / 2),
//         (size.width - padding) / 2, backGroundPaint);
//
//     //顶部的文字
//     TextPainter dayTextPainter = new TextPainter()
//       ..text = TextSpan(
//           text: dateModel.day.toString(),
//           style: new TextStyle(color: Colors.white, fontSize: 16))
//       ..textDirection = TextDirection.ltr
//       ..textAlign = TextAlign.center;
//
//     dayTextPainter.layout(minWidth: size.width, maxWidth: size.width);
//     dayTextPainter.paint(canvas, Offset(0, 10));
//
//     //下面的文字
//     String month =
//         dateModel.month < 10 ? '0${dateModel.month}' : '${dateModel.month}';
//     String day = dateModel.day < 10 ? '0${dateModel.day}' : '${dateModel.day}';
//     String keyStr = '${dateModel.year}-$month-$day';
//     String value = (map != null &&
//             map[keyStr] != null &&
//             map[keyStr].toString().isNotEmpty)
//         ? map[keyStr]
//         : dateModel.lunarString;
//     TextPainter lunarTextPainter = new TextPainter()
//       ..text = new TextSpan(
//           text: value, style: new TextStyle(color: Colors.white, fontSize: 12))
//       ..textDirection = TextDirection.ltr
//       ..textAlign = TextAlign.center;
//
//     lunarTextPainter.layout(minWidth: size.width, maxWidth: size.width);
//     lunarTextPainter.paint(canvas, Offset(0, size.height / 2));
//   }
// }
